/** 用户Model
 * */
// 登录
export interface Login
{
  userId?: string; // 用户id
  username: string; // 登录名
  password?: string; // 密码
}
// 注册
export interface Register
{
  username: string; // 登录名(手机号)
  password: string; // 密码
  msgCode?: string; // 手机验证码
}
// 底层设备和平台的信息
export interface DeviceModel
{
  cordova: string; // Cordova版本
  model: any; // 设备型号或产品的名称
  platform: any; // 设备的操作系统名称
  uuid: string; // 设备的通用唯一标识符（UUID）
  version: string; // 操作系统版本
  manufacturer: string; // 设备的制造商
  isVirtual: boolean; // 设备是否在模拟器上运行
  serial: string; // 设备硬件序列号
}
// 授权
export interface Auth
{
  login?: Login; // 登录
  device?: DeviceModel; // 设备的信息
  hasError: boolean; // 是否有错
  errMsg?: string; // 错误消息
}
// 联系人
export interface Contacts
{
  rawId?: string; // 联系人id
  name:  string; // 用户名称
  phone: string; // 电话号码
  nameChar?: string; // 用户名称拼音
  camelChar?: string; // 用户名称拼音
}
// 用户相关
export interface User
{
  userId: string; // 用户id
  username: string; // 用户名称
  gender: string; // 性别
  age: string; // 年龄
  faceInfo: {
    status: number, // 比对状态
    compareFaceVal: null, // 人脸和身份证对比值
  }; // 人脸和身份证对比值
  idState?: number; // 身份认证
  idInfo: {
    livingImg: string, // 人脸活动拍的照片
    frontImg: string, // 身份证正面
    backImg: string, // 身份证背面
    realname: string, // 真实姓名
    idNo: string, // 身份证号
    education: string, // 学历
    liveAddress: string, // 现居住地址
  };
  contactState?: number; // 联系人是否已保存过
  contacts?: any; // 联系人相关
  bankState?: number; // 银行卡认证状态
  bankInfo: {
    bankName: string, // 银行名称
    bankNo: string,   // 银行卡号
    bankphone: string, // 银行预留手机号
    creditCard: string, // 信用卡银行名称
    creditCardNo: string, // 信用卡银行卡号
    creditphone: string, // 信用卡银行预留手机号
  };
  mobileState?: number; // 手机运营商状态 0 未认证 1 进行中 2 完善
  mobileInfo: {
    collect_website: string, // 号码归属地
    token: string, // 三方token
    // plan: string, // 验证进度中 0 初始化 1 需要验证码
  }
  zmxyState?: number; // 芝麻信用认证状态
  workState?: number; // 工作信息认证状态
  workInfo: {
    companyName: string, // 公司姓名
    companyPhone: string, // 公司电话
    companyAddr: string, // 公司地址
    workingYears: string, // 工作年限
    workingImg: Array<string>, // 工作照片
  };
  moreState?: number; // 更多信息认证状态
  moreInfo: {
    taobao: string, // 淘宝账号
    email: string, // 邮箱
    qq: string, // qq
    wechat: string, // 微信
  }
}
